home *** CD-ROM | disk | FTP | other *** search
-
- #include "../CGVPMacro.csi"
-
- MainInput { uniform sampler2D bumpMap : texunit0,
- uniform sampler2D envMap : texunit1,
- uniform sampler2D fresnelMap : texunit2,
- uniform sampler2D baseMap : texunit3,
- uniform float4 Matrix,
- uniform float4 ReflectAmount,
- uniform float4 WaterColor }
- DeclarationsScript
- {
- OUT_T0_T1_T2_T3_C0
- FOUT
- }
- CoreScript
- {
- // load the decal
- float4 bumpColor = tex2D(bumpMap, IN.Tex0.xy);
- #ifdef PROFILE_PS_1_1
- float4 env = offsettex2D(envMap, IN.Tex1.xy, bumpColor, Matrix);
- #endif
- #ifdef OTHER
- float2 newst = IN.Tex1.xy + Matrix.xy * bumpColor.xx + Matrix.zw * bumpColor.yy;
- float4 env = tex2D(envMap, newst);
- #endif
- float4 fresnelColor = tex2D(fresnelMap, IN.Tex2.xy);
- float4 baseColor = tex2D(baseMap, IN.Tex3.xy);
-
- float3 color = lerp(baseColor.xyz, env.xyz, ReflectAmount.xyz);
-
- OUT.Color.xyz = color;
- float fTransp = fresnelColor.b + baseColor.b-0.5;
-
- OUT.Color.a = IN.Color.a* ReflectAmount.a * fTransp;
- }
-
-